package com.promotores;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import com.promotores.jsonparsing.JSONParser;
import com.promotores.util.Parametros;


import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;

public class ActivityListarTipoPromocion extends Activity implements OnItemClickListener, OnClickListener{
	ListView lista;
	ImageButton buscar;
	String strIdEvento;
	String nombEvento;
	String fechaIni;
	String fechaFin;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.pr_lista_tipo_promociones);
		strIdEvento = getIntent().getStringExtra("idEvento");
		fechaIni = getIntent().getStringExtra("fechaini");
		fechaFin = getIntent().getStringExtra("fechafin");	
		nombEvento = getIntent().getStringExtra("nombEvento");
		lista = (ListView) findViewById(R.id.listaTipoPromocion);
		
//		JsonTipoPromocion jTP = new JsonTipoPromocion();
		
//		List<BeanTipoPromocion> listaTipoPromocion  = jTP.read();
		
//		for(int i = 0;i<listaTipoPromocion.size();i++){
//			// no está jalando el nombre de tipo de promoción
//			if (i == 1) 
//				listaTipoPromocion.get(i).setTipoPromocion("Tarjeta Continental");
//			else if (i == 2)
//				listaTipoPromocion.get(i).setTipoPromocion("Tarjeta Interbank");
//			dbTipoPromocion.addTipoPromocion(listaTipoPromocion.get(i));
//		}
		GestorTipoPromocion dbTipoPromocion = new GestorTipoPromocion(this);
//		dbTipoPromocion.deleteAll();
//		dbTipoPromocion.addTipoPromocion(new BeanTipoPromocion(1, "Tarjeta Interbank", null, null));
//		dbTipoPromocion.addTipoPromocion(new BeanTipoPromocion(2, "Tarjeta Banco Continental", null, null));
//		dbTipoPromocion.addTipoPromocion(new BeanTipoPromocion(3, "Carné universitario", null, null));

//		GestorTipoPromocion gestorTP = new GestorTipoPromocion(this); 
//		List<BeanTipoPromocion> listaTipoPromocion = gestorTP.getAlltipoPromocion();
		AdapterTipoPromocion adapter = new AdapterTipoPromocion(dbTipoPromocion.getAlltipoPromocion(), this);
			
		lista.setAdapter(adapter);
		lista.setOnItemClickListener(this);
		
		ImageButton offline = (ImageButton)findViewById(R.id.imgOfflineMode);
        offline.setOnClickListener(this);
        if (Parametros.isOffline_mode()){
        	offline.setVisibility(View.VISIBLE);
        }
	}

	@Override
	public void onItemClick(AdapterView<?> adapter, View view, int position, long id) {
		BeanTipoPromocion tipoPromocion = (BeanTipoPromocion)adapter.getItemAtPosition(position);
		Intent intent = new Intent();
		intent.putExtra("idTipoPromocion", String.valueOf(tipoPromocion.getId()));
		intent.putExtra("idEvento", strIdEvento);		
		intent.putExtra("fechaini",fechaIni);
		intent.putExtra("fechafin",fechaFin);
		intent.putExtra("nombEvento",nombEvento);
		intent.setClass(this, ActivityAsignarNuevaPromocion.class);
		startActivity(intent);
		finish();
	}

	@Override
	public void onClick(View v) {
		// TODO Auto-generated method stub
//		Toast.makeText(this, "Buscar", Toast.LENGTH_LONG).show();
//		Intent intent = new Intent();
//		intent.setClass(this, ActivityAsignarNuevaPromocion.class);
//		startActivity(intent);
		if (v.getId() == R.id.btnBuscarPromocion){
			GestorTipoPromocion dbTipoPromocion = new GestorTipoPromocion(getApplicationContext());
			AdapterTipoPromocion adapter = new AdapterTipoPromocion(null, this);
			String auxTipoPromocion = ((EditText)findViewById(R.id.buscarLocalBar)).getText().toString();
			adapter = new AdapterTipoPromocion(dbTipoPromocion.getTipoPromocionbyFiltro(auxTipoPromocion), this);
			lista.setAdapter(adapter);
		}
	}
}
